<div id="testador">
    <p style="padding: 0">
        <label>Testador: </label>
    <table>
        <tbody>
            <tr>
                <td id="content-testador">
                    <?php
                    if (!empty($testador)) {
                        echo $testador;
                    } else {
                        echo "Nenhum testador foi designado";
                    }
                    ?>

                </td>
            </tr>
            <?php if (isAnalista() || isAdmin()) {?>
            <tr>
                <td>
                    <button id="vincular_testador">Vincular/Desvincular Testador</button>
                    <img id="img-load" src="<?php echo site_url('assets/imagens/ajax-loader.gif'); ?>" style="display: none;" />
                </td>
            </tr>
            <?php } ?>
        </tbody>
    </table>
</p>
</div>

<?php if (isAnalista() || isAdmin()) {?>

<div id="dialog" title="Vincular/Desvincular Testador" style="display: none;">
    <div style="height: 150px; overflow-y: auto;">
        <label>Filtrar</label>
        <br/>
        <input id="input-filtro" type="text" style="width: 94%;"/>

        <table id="table-testadores">
            <tbody>

            </tbody>
        </table>
    </div>
</div>

<input type="hidden" id="get-testadores-method" value="<?php echo site_url('admin/casoteste/getTestadores') ?>"/>

<script type="text/javascript">
    $('#vincular_testador').live('click', function() {
        var $url = $('#get-testadores-method').val();
        showLoad();
        $.ajax({
            url: $url,
            type: 'POST',
            data: {id_caso_teste: "<?php echo $id_objeto ?>"},
            success: function(pessoas) {
                var pessoasJson = $.parseJSON(pessoas);
                createUserCheckbox(pessoasJson);
                $('#input-filtro').val('');
                $("#dialog").dialog({
                    buttons: {
                        'Salvar': function() {
                            var idUsuario = $('input[type=radio][name=usuario]:checked:visible').val();
                            if (idUsuario != undefined && idUsuario != '') {

                                $.ajax({
                                    type: "POST",
                                    url: "<?php echo site_url('admin/casoteste/vincularTestador'); ?>",
                                    data: {id_caso_teste: "<?php echo $id_objeto ?>", id_usuario: idUsuario},
                                    success: function(result) {
                                        var p = $.parseJSON(result);
                                        $('#content-testador').html(p['nome']);
                                        $('#dialog').dialog("close");

                                    },
                                    error: function() {
                                        $('#dialog').dialog("close");
                                    }
                                });
                            } else {
                                 $('#dialog').dialog("close");
                            }
                        }
                    }
                });
                hideLoad();
            },
            error: function(e, a, f) {
                console.log(e);
                console.log(a);
                console.log(f);
                hideLoad();
            }
        });
        return false;
    });

    function createUserCheckbox(pessoasJson) {
        var $tbody = $('#table-testadores').find('tbody');
        $tbody.find('tr').remove();
        for (var i = 0, length = pessoasJson.length; i < length; i++) {
            $tbody.append(createRowUser(pessoasJson[i]));
        }
    }

    function createRowUser(pessoa) {
        var $tr = $('<tr>');
        var $td1 = $('<td>');
        var $td2 = $('<td>', {'nome': pessoa['nome'].toLowerCase()});
        $td1.append(createCheckbox(pessoa['id_usuario'], pessoa['id_caso_teste'] != null));
        $td2.append(createUserLabel(pessoa['id_usuario'], pessoa['nome']));
        $tr.append($td1, $td2);
        return $tr;
    }

    function createCheckbox(idUsuario, checked) {
        var name = 'usuario'.concat(idUsuario);
        var $checkbox = $('<input>', {'type': 'radio', 'name': 'usuario', 'id': name, 'value': idUsuario});
        if (checked) {
            $checkbox.attr('checked', 'checked');
        }
        return $checkbox;
    }

    function createUserLabel(idUsuario, nomePessoa) {
        var $label = $('<label>', {'for': 'usuario'.concat(idUsuario), 'text': nomePessoa});
        return $label;
    }

    $('#input-filtro').keyup(function() {
        var nome = $('#input-filtro').val();
        if ($.trim(nome) === '') {
            $('#table-testadores tr').show();
        } else {
            $('#table-testadores tr').hide();
            $('#table-testadores tr td[nome*="' + nome.toLowerCase() + '"]').parent().show();
        }

    });

    function showLoad() {
        $('#img-load').show();
    }

    function hideLoad() {
        $('#img-load').hide();
    }

</script>

<?php } ?>